বুটস্ট্রাপ ৫ এর ট্যাব (Tabs) উপাদানটি একটি নেভিগেশন উপাদান, যা একাধিক কন্টেন্ট বা প্যানেলগুলোকে স্যুইচ করার জন্য ব্যবহৃত হয়। এটি ব্যবহারকারীদের একাধিক কন্টেন্ট এক জায়গায় দেখানোর সুযোগ দেয়, যেখানে প্রতিটি ট্যাব ক্লিক করার মাধ্যমে সংশ্লিষ্ট কন্টেন্ট দেখানো হয়।
এখানে আমরা ডাইনামিক ট্যাব কন্টেন্ট এবং ট্যাব স্টাইলিং নিয়ে বিস্তারিত আলোচনা করব।
ডাইনামিক ট্যাব কন্টেন্ট তৈরি করার জন্য, আপনি JavaScript বা jQuery ব্যবহার করে কন্টেন্ট পরিবর্তন করতে পারেন। এতে ব্যবহারকারীর ইন্টারঅ্যাকশনের মাধ্যমে কন্টেন্ট পরিবর্তন হবে, যেমন, যখন একটি ট্যাব ক্লিক হবে, তখন সংশ্লিষ্ট কন্টেন্ট দেখানো হবে।
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dynamic Tab Content</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<div class="container mt-5">
<ul class="nav nav-tabs" id="myTabs" role="tablist">
<li class="nav-item" role="presentation">
<a class="nav-link active" id="home-tab" data-bs-toggle="tab" href="#home" role="tab" aria-controls="home" aria-selected="true">হোম</a>
</li>
<li class="nav-item" role="presentation">
<a class="nav-link" id="profile-tab" data-bs-toggle="tab" href="#profile" role="tab" aria-controls="profile" aria-selected="false">প্রোফাইল</a>
</li>
<li class="nav-item" role="presentation">
<a class="nav-link" id="contact-tab" data-bs-toggle="tab" href="#contact" role="tab" aria-controls="contact" aria-selected="false">যোগাযোগ</a>
</li>
</ul>
<div class="tab-content mt-3" id="myTabContent">
<div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">
<h5>হোম কন্টেন্ট</h5>
<p>এটি হোম ট্যাবের কন্টেন্ট। আপনি এখানে যে তথ্য চান তা দেখাতে পারেন।</p>
</div>
<div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab">
<h5>প্রোফাইল কন্টেন্ট</h5>
<p>এটি প্রোফাইল ট্যাবের কন্টেন্ট। এখানে ব্যবহারকারীর প্রোফাইল সম্পর্কিত তথ্য দেখানো হবে।</p>
</div>
<div class="tab-pane fade" id="contact" role="tabpanel" aria-labelledby="contact-tab">
<h5>যোগাযোগ কন্টেন্ট</h5>
<p>এটি যোগাযোগ ট্যাবের কন্টেন্ট। এখানে যোগাযোগের তথ্য বা ফর্ম প্রদর্শন করা হবে।</p>
</div>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/js/bootstrap.min.js"></script>
</body>
</html>
এখানে:
data-bs-toggle="tab"
: এই অ্যাট্রিবিউটটি নির্ধারণ করে যে ট্যাবটি ট্যাব কন্টেন্ট পরিবর্তন করতে সক্ষম হবে।tab-content
: এটি একটি কনটেইনার যেখানে সব ট্যাব কন্টেন্ট থাকে।tab-pane
: প্রতিটি ট্যাব কন্টেন্টের জন্য আলাদা প্যানেল। এটি ট্যাবের সাথে যুক্ত হয় এবং ক্লিক করলে প্রদর্শিত হয়।বুটস্ট্রাপ ৫ এ ট্যাবের ডিজাইন এবং স্টাইল কাস্টমাইজ করা খুব সহজ। আপনি ট্যাবের রঙ, প্যাডিং, বর্ডার এবং অন্যান্য স্টাইলিং শৈলী পরিবর্তন করতে পারেন।
<style>
.nav-tabs .nav-link {
border: 2px solid transparent;
border-radius: 10px;
margin-right: 10px;
}
.nav-tabs .nav-link.active {
background-color: #0d6efd;
color: white;
border-color: #0d6efd;
}
.nav-tabs .nav-link:hover {
background-color: #e9ecef;
color: #0d6efd;
}
.tab-content {
padding: 20px;
background-color: #f8f9fa;
border: 1px solid #ddd;
border-radius: 5px;
}
</style>
এখানে:
.nav-tabs .nav-link
: প্রতিটি ট্যাব লিঙ্কের জন্য স্টাইল, যেমন বর্ডার এবং মার্জিন।.nav-tabs .nav-link.active
: এটি সক্রিয় ট্যাবের জন্য স্টাইল, যেমন ব্যাকগ্রাউন্ড রঙ এবং বর্ডার কালার পরিবর্তন করা।.tab-content
: ট্যাব কন্টেন্টের জন্য প্যাডিং এবং ব্যাকগ্রাউন্ড রঙ দেওয়া হয়েছে।ডাইনামিক কন্টেন্ট আপডেট করতে, আপনি JavaScript ব্যবহার করতে পারেন। যেমন, আপনি একটি ট্যাব ক্লিক করলে ট্যাব কন্টেন্ট ডাইনামিকভাবে লোড করতে পারেন:
// ডাইনামিক ট্যাব কন্টেন্ট লোড করা
document.getElementById("home-tab").addEventListener("click", function() {
document.getElementById("home").innerHTML = "<p>এই কন্টেন্টটি ডাইনামিকভাবে লোড করা হয়েছে!</p>";
});
এটি তখন ব্যবহার হবে যখন আপনি একটি ট্যাব ক্লিক করবেন এবং ট্যাব কন্টেন্ট পরিবর্তন করতে চাইবেন।
বুটস্ট্রাপ ৫ এর ট্যাব উপাদান ব্যবহার করে আপনি সহজে ডাইনামিক ট্যাব কন্টেন্ট তৈরি করতে পারেন এবং স্টাইলিং কাস্টমাইজ করে আপনার ওয়েবসাইটের ডিজাইনকে আরও উন্নত করতে পারেন। ট্যাব ইভেন্টগুলোর মাধ্যমে আপনি ট্যাব কন্টেন্টকে ডাইনামিকভাবে আপডেট করতে পারবেন এবং ব্যবহারকারীর অভিজ্ঞতা উন্নত করতে পারবেন।
Read more